[INFO] cloning repository https://github.com/lssssj/mini-lsm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lssssj/mini-lsm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flssssj%2Fmini-lsm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flssssj%2Fmini-lsm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 923915372013d92d08c4a2cf89660ea9618db0b1
[INFO] checking lssssj/mini-lsm/923915372013d92d08c4a2cf89660ea9618db0b1 against master#40557f6225e337d68c8d4f086557ce54135f5dd9 for pr-158447
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flssssj%2Fmini-lsm" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-0-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/lssssj/mini-lsm
[INFO] finished tweaking git repo https://github.com/lssssj/mini-lsm
[INFO] tweaked toml for git repo https://github.com/lssssj/mini-lsm written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lssssj/mini-lsm on toolchain 40557f6225e337d68c8d4f086557ce54135f5dd9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+40557f6225e337d68c8d4f086557ce54135f5dd9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lssssj/mini-lsm already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+40557f6225e337d68c8d4f086557ce54135f5dd9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded triomphe v0.1.13
[INFO] [stderr]   Downloaded bytecount v0.6.8
[INFO] [stderr]   Downloaded ouroboros v0.18.4
[INFO] [stderr]   Downloaded ouroboros_macro v0.18.4
[INFO] [stderr]   Downloaded camino v1.1.7
[INFO] [stderr]   Downloaded moka v0.9.9
[INFO] [stderr]   Downloaded duct v0.13.7
[INFO] [stderr]   Downloaded clap_derive v4.5.5
[INFO] [stderr]   Downloaded clap v4.5.7
[INFO] [stderr]   Downloaded rustyline v13.0.0
[INFO] [stderr]   Downloaded clap_builder v4.5.7
[INFO] [stderr]   Downloaded farmhash v1.1.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823
[INFO] running `Command { std: "docker" "start" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823" "/opt/rustwide/cargo-home/bin/cargo" "+40557f6225e337d68c8d4f086557ce54135f5dd9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823" "/opt/rustwide/cargo-home/bin/cargo" "+40557f6225e337d68c8d4f086557ce54135f5dd9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]     Checking bitflags v2.5.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]     Checking clap_lex v0.7.1
[INFO] [stderr]     Checking anstream v0.6.14
[INFO] [stderr]    Compiling anyhow v1.0.86
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling either v1.12.0
[INFO] [stderr]    Compiling serde v1.0.203
[INFO] [stderr]    Compiling syn v2.0.67
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]    Compiling moka v0.9.9
[INFO] [stderr]    Compiling serde_json v1.0.117
[INFO] [stderr]     Checking aliasable v0.1.3
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking triomphe v0.1.13
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]     Checking crossbeam-skiplist v0.1.3
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]     Checking clap_builder v4.5.7
[INFO] [stderr]     Checking farmhash v1.1.5
[INFO] [stderr]     Checking bytes v1.6.0
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking quanta v0.11.1
[INFO] [stderr]     Checking nix v0.27.1
[INFO] [stderr]     Checking shared_child v1.0.0
[INFO] [stderr]     Checking os_pipe v1.2.0
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking uuid v1.8.0
[INFO] [stderr]     Checking duct v0.13.7
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking fd-lock v4.0.2
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]     Checking scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling clap_derive v4.5.5
[INFO] [stderr]    Compiling serde_derive v1.0.203
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling ouroboros_macro v0.18.4
[INFO] [stderr]     Checking rustyline v13.0.0
[INFO] [stderr]     Checking clap v4.5.7
[INFO] [stderr]     Checking thiserror v1.0.61
[INFO] [stderr]     Checking mini-lsm-xtask v0.2.0 (/opt/rustwide/workdir/xtask)
[INFO] [stderr]     Checking ouroboros v0.18.4
[INFO] [stderr]     Checking mini-lsm v0.2.0 (/opt/rustwide/workdir/mini-lsm)
[INFO] [stderr]     Checking mini-lsm-starter v0.2.0 (/opt/rustwide/workdir/mini-lsm-starter)
[INFO] [stderr]     Checking mini-lsm-mvcc v0.2.0 (/opt/rustwide/workdir/mini-lsm-mvcc)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> mini-lsm-starter/src/compact.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::key::{self, KeySlice};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> mini-lsm-starter/src/compact.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::key::{self, KeySlice};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]    --> mini-lsm-starter/src/tests/mytest.rs:160:3
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[naked]
[INFO] [stdout]     |   ^^^^^ usage of unsafe attribute
[INFO] [stdout]     |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[unsafe(naked)]
[INFO] [stdout]     |   +++++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![feature]`
[INFO] [stdout]   --> mini-lsm-starter/src/tests/mytest.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[feature(naked_functions)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: this attribute does not have an `!`, which means it is applied to this use
[INFO] [stdout]   --> mini-lsm-starter/src/tests/mytest.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::arch::asm;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_with_ts` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]   --> mini-lsm/src/mvcc/txn.rs:56:20
[INFO] [stdout]    |
[INFO] [stdout] 56 |         self.inner.get_with_ts(key, self.read_ts)
[INFO] [stdout]    |                    ^^^^^^^^^^^ method not found in `std::sync::Arc<LsmStorageInner>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `scan_with_ts` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]   --> mini-lsm/src/mvcc/txn.rs:64:31
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let iter = self.inner.scan_with_ts(lower, upper, self.read_ts)?;
[INFO] [stdout]    |                               ^^^^^^^^^^^^ method not found in `std::sync::Arc<LsmStorageInner>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:110:39
[INFO] [stdout]     |
[INFO] [stdout] 110 |         let _commit_lock = self.inner.mvcc().commit_lock.lock();
[INFO] [stdout]     |                                       ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |               for (_, txn_data) in self
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 122 | |                 .inner
[INFO] [stdout] 123 | |                 .mvcc()
[INFO] [stdout]     | |                 -^^^^-- help: remove the arguments
[INFO] [stdout]     | |                 ||
[INFO] [stdout]     | |_________________|field, not a method
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write_batch_inner` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:150:29
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let ts = self.inner.write_batch_inner(&batch)?;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `write_batch` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 150 -         let ts = self.inner.write_batch_inner(&batch)?;
[INFO] [stdout] 150 +         let ts = self.inner.write_batch(&batch)?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:152:49
[INFO] [stdout]     |
[INFO] [stdout] 152 |             let mut committed_txns = self.inner.mvcc().committed_txns.lock();
[INFO] [stdout]     |                                                 ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:166:40
[INFO] [stdout]     |
[INFO] [stdout] 166 |             let watermark = self.inner.mvcc().watermark();
[INFO] [stdout]     |                                        ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:184:20
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.inner.mvcc().ts.lock().1.remove_reader(self.read_ts);
[INFO] [stdout]     |                    ^^^^-- help: remove the arguments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hasher`
[INFO] [stdout]  --> mini-lsm-starter/src/wal.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::hash::Hasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_with_ts` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]   --> mini-lsm/src/mvcc/txn.rs:56:20
[INFO] [stdout]    |
[INFO] [stdout] 56 |         self.inner.get_with_ts(key, self.read_ts)
[INFO] [stdout]    |                    ^^^^^^^^^^^ method not found in `std::sync::Arc<LsmStorageInner>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `scan_with_ts` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]   --> mini-lsm/src/mvcc/txn.rs:64:31
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let iter = self.inner.scan_with_ts(lower, upper, self.read_ts)?;
[INFO] [stdout]    |                               ^^^^^^^^^^^^ method not found in `std::sync::Arc<LsmStorageInner>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:110:39
[INFO] [stdout]     |
[INFO] [stdout] 110 |         let _commit_lock = self.inner.mvcc().commit_lock.lock();
[INFO] [stdout]     |                                       ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |               for (_, txn_data) in self
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 122 | |                 .inner
[INFO] [stdout] 123 | |                 .mvcc()
[INFO] [stdout]     | |                 -^^^^-- help: remove the arguments
[INFO] [stdout]     | |                 ||
[INFO] [stdout]     | |_________________|field, not a method
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write_batch_inner` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:150:29
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let ts = self.inner.write_batch_inner(&batch)?;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `write_batch` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 150 -         let ts = self.inner.write_batch_inner(&batch)?;
[INFO] [stdout] 150 +         let ts = self.inner.write_batch(&batch)?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:152:49
[INFO] [stdout]     |
[INFO] [stdout] 152 |             let mut committed_txns = self.inner.mvcc().committed_txns.lock();
[INFO] [stdout]     |                                                 ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:166:40
[INFO] [stdout]     |
[INFO] [stdout] 166 |             let watermark = self.inner.mvcc().watermark();
[INFO] [stdout]     |                                        ^^^^-- help: remove the arguments
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mvcc` found for struct `std::sync::Arc<LsmStorageInner>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/mvcc/txn.rs:184:20
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.inner.mvcc().ts.lock().1.remove_reader(self.read_ts);
[INFO] [stdout]     |                    ^^^^-- help: remove the arguments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    field, not a method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ts` found for struct `Key<T>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/tests/harness.rs:436:50
[INFO] [stdout]     |
[INFO] [stdout] 436 |             println!("{:?} {:?} {:?}",  t1.key().ts(),std::str::from_utf8(t1.key().key_ref()),std::str::from_utf8(t1.value()) );
[INFO] [stdout]     |                                                  ^^ method not found in `Key<&[u8]>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: mini-lsm/src/key.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Key<T: AsRef<[u8]>>(T);
[INFO] [stdout]     | ------------------------------ method `ts` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `key_ref` found for struct `Key<T>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/tests/harness.rs:436:84
[INFO] [stdout]     |
[INFO] [stdout] 436 |             println!("{:?} {:?} {:?}",  t1.key().ts(),std::str::from_utf8(t1.key().key_ref()),std::str::from_utf8(t1.value()) );
[INFO] [stdout]     |                                                                                    ^^^^^^^ method not found in `Key<&[u8]>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: mini-lsm/src/key.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Key<T: AsRef<[u8]>>(T);
[INFO] [stdout]     | ------------------------------ method `key_ref` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `ts` found for struct `Key<T>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/tests/harness.rs:449:49
[INFO] [stdout]     |
[INFO] [stdout] 449 |             println!("{:?} {:?} {:?}", t1.key().ts(), std::str::from_utf8(t1.key().key_ref()),std::str::from_utf8(t1.value()) );
[INFO] [stdout]     |                                                 ^^ method not found in `Key<&[u8]>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: mini-lsm/src/key.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Key<T: AsRef<[u8]>>(T);
[INFO] [stdout]     | ------------------------------ method `ts` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `key_ref` found for struct `Key<T>` in the current scope
[INFO] [stdout]    --> mini-lsm/src/tests/harness.rs:449:84
[INFO] [stdout]     |
[INFO] [stdout] 449 |             println!("{:?} {:?} {:?}", t1.key().ts(), std::str::from_utf8(t1.key().key_ref()),std::str::from_utf8(t1.value()) );
[INFO] [stdout]     |                                                                                    ^^^^^^^ method not found in `Key<&[u8]>`
[INFO] [stdout]     |
[INFO] [stdout]    ::: mini-lsm/src/key.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Key<T: AsRef<[u8]>>(T);
[INFO] [stdout]     | ------------------------------ method `key_ref` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mini-lsm` (lib) due to 8 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0787]: the `asm!` macro is not allowed in naked functions
[INFO] [stdout]    --> mini-lsm-starter/src/tests/mytest.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 | /     asm!(
[INFO] [stdout] 165 | |         "mov [rdi + 0x00], rsp",
[INFO] [stdout] 166 | |         "mov [rdi + 0x08], r15",
[INFO] [stdout] 167 | |         "mov [rdi + 0x10], r14",
[INFO] [stdout] ...   |
[INFO] [stdout] 179 | |         "ret", options(noreturn)
[INFO] [stdout] 180 | |     );
[INFO] [stdout]     | |_____^ consider using the `naked_asm!` macro instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-starter/src/block/iterator.rs:63:16
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice {
[INFO] [stdout]    |                ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |
[INFO] [stdout]    |                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-starter/src/iterators/concat_iterator.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn key(&self) -> KeySlice {
[INFO] [stdout]     |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |            |
[INFO] [stdout]     |            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-starter/src/iterators/merge_iterator.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-starter/src/key.rs:75:25
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-starter/src/key.rs:105:25
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-starter/src/mem_table.rs:48:50
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice> {
[INFO] [stdout]    |                                                  ^^^^^                     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice<'_>> {
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-starter/src/mem_table.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 |     fn key(&self) -> KeySlice {
[INFO] [stdout]     |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |            |
[INFO] [stdout]     |            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 228 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-starter/src/table/iterator.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/block/iterator.rs:63:16
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice {
[INFO] [stdout]    |                ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |
[INFO] [stdout]    |                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/iterators/concat_iterator.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/iterators/merge_iterator.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/key.rs:75:25
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-mvcc/src/key.rs:105:25
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/mem_table.rs:53:50
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice> {
[INFO] [stdout]    |                                                  ^^^^^                     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice<'_>> {
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-mvcc/src/mem_table.rs:230:12
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn key(&self) -> KeySlice {
[INFO] [stdout]     |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |            |
[INFO] [stdout]     |            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/table/iterator.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hasher`
[INFO] [stdout]  --> mini-lsm-starter/src/wal.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::hash::Hasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mini-lsm` (lib test) due to 12 previous errors
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/block/iterator.rs:63:16
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice {
[INFO] [stdout]    |                ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                |
[INFO] [stdout]    |                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/iterators/concat_iterator.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/iterators/merge_iterator.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/key.rs:75:25
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-mvcc/src/key.rs:105:25
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn as_key_slice(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/mem_table.rs:53:50
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice> {
[INFO] [stdout]    |                                                  ^^^^^                     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn map_key_bound_plus_ts(bound: Bound<&[u8]>, ts: u64) -> Bound<KeySlice<'_>> {
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> mini-lsm-mvcc/src/mem_table.rs:230:12
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn key(&self) -> KeySlice {
[INFO] [stdout]     |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |            |
[INFO] [stdout]     |            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]     |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/table/iterator.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> mini-lsm-mvcc/src/tests/harness.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn key(&self) -> KeySlice {
[INFO] [stdout]    |            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn key(&self) -> KeySlice<'_> {
[INFO] [stdout]    |                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> mini-lsm-mvcc/src/tests/harness.rs:437:13
[INFO] [stdout]     |
[INFO] [stdout] 437 |             t1.next();
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 437 |             let _ = t1.next();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> mini-lsm-mvcc/src/tests/harness.rs:450:13
[INFO] [stdout]     |
[INFO] [stdout] 450 |             t1.next();
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 450 |             let _ = t1.next();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0787`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mini-lsm-starter` (lib test) due to 2 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823", kill_on_drop: false }`
[INFO] [stdout] 058a13610358babd7ca810eaf12007891795782f09f4e05d697997b75c47d823
